package cn.xianshu.util;

import cn.xianshu.exception.GlobalException;
import org.springframework.util.StringUtils;

public class AssertUtil {

    /**
     * 断言对象为空
     * @param object ：断言的对象
     * @param message ：错误信息
     */
    public static void isNull(Object object, String message) {
        if (object != null) {
            throw new GlobalException(message);
        }
    }

    /**
     * 断言对象不为空
     * @param object ：断言的对象
     * @param message ：错误信息
     */
    public static void isNotNull(Object object, String message) {
        if (object == null) {
            throw new GlobalException(message);
        }
    }

    /**
     * 断言字符串不为空
     * @param str ：断言的对象
     * @param message ：错误信息
     */
    public static void isNotEmpty(String str, String message) {
        if (!StringUtils.hasLength(str)) {
            throw new GlobalException(message);
        }
    }
    /**
     * 断言字符串为空
     * @param str ：断言的对象
     * @param message ：错误信息
     */
    public static void isEmpty(String str, String message) {
        if (StringUtils.hasLength(str)) {
            throw new GlobalException(message);
        }
    }

    /**
     * 断言两个参数是否相等
     * @param t1
     * @param t2
     * @param message
     */
    public static void isEqual(Integer t1, int t2, String message) {
        if (t1 != t2){
            throw new GlobalException(message);
        }
    }

    /**
     * 断言两个参数是否相等
     * @param t1
     * @param t2
     * @param message
     */
    public static void isStrEqual(String t1, String t2, String message) {
        if (!t1.equalsIgnoreCase(t2)){
            throw new GlobalException(message);
        }
    }

    /**
     * 判断是否为false
     * @param success
     * @param message
     */
    public static void isTrue(boolean success, String message) {
        if (!success){
            throw new GlobalException(message);
        }
    }

    /**
     *  判断课件是不是上架的状态
     * @param t1
     * @param t2
     * @param message
     */
    public static void isEquals(Integer t1, int t2, String message) {
        if (t1 != t2) {
            throw  new GlobalException(message);
        }
    }
}
